{% extends "base.html" %}

{% block content %}
<div class="container-fluid">
    <div class="row justify-content-center">
        <div class="col-lg-8">
            <div class="card shadow">
                <div class="card-header py-3">
                    <h6 class="m-0 font-weight-bold text-primary">
                        <i class="fas fa-plus me-2"></i>添加自定义定时任务
                    </h6>
                </div>
                <div class="card-body">
                    <form method="POST">
                        <div class="mb-3">
                            <label for="name" class="form-label">任务名称 <span class="text-danger">*</span></label>
                            <input type="text" class="form-control" id="name" name="name" required 
                                   placeholder="请输入任务名称">
                            <div class="form-text">任务的唯一标识名称</div>
                        </div>
                        
                        <div class="mb-3">
                            <label for="description" class="form-label">任务描述</label>
                            <textarea class="form-control" id="description" name="description" rows="3" 
                                      placeholder="请输入任务描述（可选）"></textarea>
                            <div class="form-text">描述任务的功能和用途</div>
                        </div>
                        
                        <div class="mb-3">
                            <label for="script_id" class="form-label">选择脚本 <span class="text-danger">*</span></label>
                            <select class="form-select" id="script_id" name="script_id" required>
                                <option value="">请选择要执行的脚本</option>
                                {% for script in scripts %}
                                <option value="{{ script.id }}">{{ script.name }} - {{ script.filename }} - {{ script.file_path }}</option>
                                {% endfor %}
                            </select>
                            <div class="form-text">选择要定时执行的Python脚本</div>
                        </div>
                        
                        <div class="mb-3">
                            <label for="cron_expression" class="form-label">Cron表达式 <span class="text-danger">*</span></label>
                            <input type="text" class="form-control" id="cron_expression" name="cron_expression" required 
                                   placeholder="例如: 0 * * * * (每小时执行)">
                            <div class="form-text">使用标准5字段cron表达式，不包含秒</div>
                        </div>
                        

                        
                        <div class="d-flex justify-content-between">
                            <a href="{{ url_for('extended_tasks') }}" class="btn btn-secondary">
                                <i class="fas fa-arrow-left me-1"></i>返回
                            </a>
                            <button type="submit" class="btn btn-primary">
                                <i class="fas fa-plus me-1"></i>创建任务
                            </button>
                        </div>
                    </form>
                </div>
            </div>
            
            <!-- Cron表达式说明 -->
            <div class="card shadow mt-4">
                <div class="card-header py-3">
                    <h6 class="m-0 font-weight-bold text-primary">
                        <i class="fas fa-info-circle me-2"></i>Cron表达式说明
                    </h6>
                </div>
                <div class="card-body">
                    <div class="row">
                        <div class="col-md-6">
                            <h6>基本格式</h6>
                            <p class="text-muted">Cron表达式格式：<code>分钟 小时 日 月 星期</code></p>
                            
                            <h6 class="mt-3">常用示例</h6>
                            <ul class="text-muted">
                                <li><code>* * * * *</code> - 每分钟执行</li>
                                <li><code>0 * * * *</code> - 每小时执行</li>
                                <li><code>0 0 * * *</code> - 每天0点执行</li>
                                <li><code>0 0 * * 0</code> - 每周日0点执行</li>
                                <li><code>0 0 1 * *</code> - 每月1号0点执行</li>
                                <li><code>30 9 * * 1-5</code> - 工作日9:30执行</li>
                                <li><code>0 12 * * 1</code> - 每周一12点执行</li>
                            </ul>
                        </div>
                        <div class="col-md-6">
                            <h6>特殊字符</h6>
                            <ul class="text-muted">
                                <li><code>*</code> - 表示任意值</li>
                                <li><code>/</code> - 表示间隔，如 <code>*/5</code> 表示每5个单位</li>
                                <li><code>-</code> - 表示范围，如 <code>1-5</code> 表示1到5</li>
                                <li><code>,</code> - 表示多个值，如 <code>1,3,5</code> 表示1、3、5</li>
                            </ul>
                            
                            <h6 class="mt-3">脚本要求</h6>
                            <ul class="text-muted">
                                <li>支持无参数执行</li>
                                <li>包含适当的错误处理</li>
                                <li>使用sys.exit(0)表示成功</li>
                                <li>使用sys.exit(1)表示失败</li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
{% endblock %} 